package memento.fromKanYun;

/**
 * 可以由原始类持有备忘录
 *
 * 备用参数应保存在原类之外的地方，由原始类持有备忘录违背这一原则
 */
public class test2 {
    public static void main(String[] args) {
        /**
        创建原始类
         */
        Original original = new Original("白天");
        System.out.println("original初始状态：" + original.getState());
        /**
        创建备忘录
         */
        original.setMemento(new Memento(original.getState()));
        /**
         * 修改原始类
         */
        original.setState("黑夜");
        System.out.println("original修改后的状态：" + original.getState());
        /**
         * 恢复备忘录
         */
        original.recoverMemento(original.getMemento());
        System.out.println("original恢复后的状态：" + original.getState());

    }
}
